body {
  font-size: 120%;
  line-height: 1.5;
  font-family: 'Roboto';
  font-weight: 300;
  overflow-x: hidden;
  height: 100%;
  line-height: 1.5;
  font-family: 'Montserrat';
  font-weight: 300;
  color: black;
}

.cat-header {
  margin-bottom: 50px;
  font-size: 1.65rem;
  background: #4776e6; /* fallback for old browsers */
  background: -webkit-linear-gradient(
    to right,
    #8e54e9,
    #4776e6
  ); /* Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(
    to right,
    #8e54e9,
    #4776e6
  ); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}
.cat-header,
.cat-footer {
  text-align: center;
  background-color: rgba(179, 166, 238, 0.5);
}

.header-wrapper,
.footer-wrapper {
  padding: 30px;
  text-align: center;
}
.cat-footer {
  margin-top: 20px;
  background-color: rgba(179, 166, 238, 0.5);
  font-weight: 300;
  padding: 50px 0;
}
.challenge-name {
  font-size: 48px;
  font-weight: 600;
  font-family: 'Montserrat';
}
.title {
  text-align: center;
  font-family: 'Merriweather';
  font-weight: 300;
}
.cat-card-image img {
  max-width: 100%;
  min-width: 100%;
  transition: transform 1s ease;
}

.cat-cards {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: auto;
  min-height: 100vh;
  font-size: 1.65rem;
}
.cat-card {
  width: 65%;
  box-shadow: 0 3px 3px 2px rgba(0, 0, 0, 0.2);
  margin: 15px auto;
  transition: transform 1s ease;
}
.loading-card {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 70%;
  margin: 15px auto;
  text-align: center;
}
.cat-card:hover {
  box-shadow: 0px 0px 3px 2px rgba(0, 0, 0, 0.3);
}
.cat-card-image {
  z-index: -1;
  overflow: hidden;
}
.cat-card-image:hover {
  &:hover img {
    transform: scale(1.5);
  }
}
.cat-card-body {
  padding: 30px;
}
.cat-name {
  font-weight: 300;
  margin-bottom: 0;
  padding-bottom: 0;
  font-size: 28px;
  font-family: 'Merriweather';
}
.cat-origin {
  font-weight: 400;
  padding-top: 0;
  margin-top: 0;
  margin-bottom: 5px;
}
.cat-desc {
  margin: 10px auto;
  p {
    margin-top: 10px;
  }
}
.title {
  h1 {
    margin: 0;
    padding: 0;
  }
  p {
    margin-bottom: 0;
  }
}
h1.cats-header-title {
  text-shadow: 2px 2px 0px #fff, 2px 2px 0px rgba(0, 0, 0, 0.15) !important;
  font-weight: 600;
  font-family: 'Merriweather';
}
.cat-summary {
  font-size: 1rem;
  .average {
    display: inline-block;
    color: rgb(102, 86, 86);
    font-size: 26px;
    color: #61dbfb;
  }
}

.cat-icon {
  width: 1%;
}
span {
  font-weight: 400;
  color: #616161;
}
.cats-nav {
  display: flex;
  flex-wrap: wrap;
  width: 65%;
  margin: 20px auto;
  font-size: 1.65rem;

  div {
    border: 1px solid rgb(194, 191, 191);
    padding: 10px 15px;
    text-transform: uppercase;
    margin: 5px 20px 5px 0;
    font-weight: 400;
    border-radius: 2px;
    cursor: pointer;
  }
}

.arrow {
  display: flex;
  justify-content: flex-end;
  font-size: 50px;
  a,
  a:active,
  a:visited {
    color: purple;
  }
}
.nav-link,
.nav-link:active {
  text-decoration: none;
  color: purple;
  font-weight: 600;
}

@media (max-width: 768px) {
  body {
    font-size: 1rem;
  }
  .challenge-name,
  .cats-header-title {
    font-size: 32px;
    font-weight: 600;
    font-family: 'Montserrat';
  }
  .cat-cards {
    flex-direction: column;
    margin: auto;
  }
  .cat-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 95%;
    box-shadow: 0px 0px 3px 2px rgba(0, 0, 0, 0.1);
    transition: transform 1s ease;
  }
  .cat-summary {
    font-size: 1rem;
    .average {
      font-size: 1.25rem;
    }
  }

  .header-wrapper,
  .footer-wrapper {
    padding: 15px;
  }

  .cats-nav {
    width: 95%;
    div {
      border: 1px solid rgb(194, 191, 191);
      padding: 5px;
      margin: 5px 10px 5px 0;
    }
  }
}
